Creating an aggregation group

ABSTRACT

When a CB device receives through a first port a packet sent from a PE device, the CB device analyzes a unique identifier of the PE device from the packet. If the first port is not included in any of aggregation groups, an array table is queried. If the unique identifier of the PE device does not exist in the array table, an idle first aggregation group identifier is selected, a first aggregation group corresponding to the first aggregation group identifier is created, the first port is added to the first aggregation group, and a correspondence between the first aggregation group identifier and the unique identifier of the PE device is recorded in the array table.

CROSS REFERENCE TO RELATED APPLICATION

This application claims priority to Chinese Patent Application No.201710607814.5 entitled “METHOD AND APPARATUS FOR CREATING AGGREGATIONGROUP” filed on Jul. 24, 2017, the entire content of which isincorporated herein by reference.

BACKGROUND

IRF (Intelligent Resilient Framework) is a vertical network integrationvirtualization technology that can be used to integrate hardwareresources and software processing capabilities of multiple devices toachieve coordinated work, unified management, and ongoing maintenance ofmultiple devices. The IRF may connect multiple PE (Port Extender)devices to a CB (Controlling Bridge) device, and virtualize each of thePE devices into a remote service board of the CB device so that the CBdevice may centrally manage the multiple CB devices.

To improve the link stability between a CB device and a PE device,multiple links may be established between the CB device and the PEdevice. The multiple links form an aggregation link for transmittingpackets. For management of the aggregation link, a user needs tomanually create an aggregation group for the PE device on the CB deviceand add ports connected to the PE device to the aggregation group.However, since the creating of the aggregation group and the addition ofports are performed manually, the workload is large, especially when theCB device is connected to a large number of PE devices.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic diagram of an application scenario according to anexample of this disclosure.

FIG. 2 is a flowchart of a method for creating an aggregation groupaccording to an example of this disclosure.

FIG. 2A is a schematic flowchart of a method for creating an aggregationgroup according to an example of this disclosure.

FIG. 3 is a structural diagram of an apparatus for creating anaggregation group according to an example of this disclosure.

FIG. 4 is a hardware structural diagram of a CB device according to anexample of this disclosure.

DETAILED DESCRIPTION OF THE EMBODIMENTS

The terms used in examples of this disclosure are for the purpose ofdescribing the specific examples, not intended to limit this disclosure.The “one”, “said” and “the” in a singular form intend to include aplural form, unless stated specifically in the context. It should alsobe understood that the term “and/or” indicates one or multipleassociated listed items or any of the combination thereof.

It is to be understood that although different information may bedescribed using the terms such as first, second, and third in examplesof the present disclosure, these information should not be limited tothese terms. These terms are used only to distinguish the same type ofinformation from each other. For example, the first information may alsobe referred to as the second information without departing from thescope of the present disclosure, and similarly, the second informationmay also be referred to as the first information. Depending on thecontext, the word “if” as used herein may be interpreted as “when” or“as” or “determining in response to”.

The examples of this disclosure provide a method for creating anaggregation group, which can be applied to a system including a CBdevice and PE devices. In order to improve the link stability betweenthe CB device and the PE device, two or more links may be establishedbetween the CB device and the PE device. Hereinafter, for convenience ofdescription, two links are established is taken as an example fordescription. FIG. 1 shows an application scenario according to anexample of this disclosure. The CB device 10 may connect the PE device11 via two links, and connect PE device 12 also via two links. The port101 of the CB device 10 is connected to the port 111 of the PE device11, the port 103 of the CB device 10 is connected to the port 112 of thePE device 11, and the port 102 of the CB device 10 is connected to theport 121 of the PE device 12, and the port 104 of the CB device 10 isconnected to the port 122 of the PE device 12.

FIG. 2 is a flowchart illustrating a method of creating an aggregationgroup according to an example of this disclosure, which may be appliedto a CB device. The method may include the following blocks.

At block 201, the CB device may receive, through a first port, a packetsent from the PE device, and analyze a unique identifier of the PEdevice from the packet. The packet may include, but is not limited to,an LLDP (Link Layer Discovery Protocol) packet.

In an example, when receiving a packet through the first port, the CBdevice may analyze a device type field from the packet. When the devicetype field is a preset value, the CB device may determine that thepacket received through the first port is sent from the PE device, andthen execute the subsequent blocks. Moreover, when the device type fieldis not the preset value, the CB device may determine that the packetreceived through the first port is not sent from the PE device, and thenends the process.

Below, an LLDP packet is taken as an example to make description for theabove process. The LLDP packet may include a device type field and aunique identifier field, and of course, other fields may be alsoincluded. In examples of this disclosure, other content included in theLLDP packet are not limited.

For example, when a PE device is connected to a CB device, the PE devicemay send an LLDP packet to the CB device. Assume that the device typefield carried in the LLDP packet is a preset value, and it indicatesthat the type of the device that sends the LLDP packet is a PE device.The unique identifier field carried in the LLDP packet is a uniqueidentifier of the PE device. In addition, the CB device can also send anLLDP packet to the PE device. In this case, the device type fieldcarried in the LLDP packet will not be the preset value. The value otherthan the preset value may be referred to as a first value in order to bedistinguished from the preset value, and the first value indicates thatthe device type is a CB device, and the unique identifier field carriedin the LLDP packet is a unique identifier of the CB device.

The device type field may be a CPP (Cascade Port Priority) field. In anexample, the value of the CPP field may range from 0 to 255. In order todistinguish whether the sender of the packet is a PE device or a CBdevice by the CPP field, one or more values within 0-255 may be used asa preset value to indicate that the device type is a PE device, andremaining values other than the preset value are the first values toindicate that the device type is a CB device. For example, 255 may beused as the preset value, and 0-254 may be used as the first value.

Based on this, when the CB device receives the LLDP packet through thefirst port, if the device type field of the LLDP packet is 255, itindicates that the LLDP packet is sent from the PE device, that is, theCB device receives, through the first port, the LLDP packet sent fromthe PE device. If the device type field of the LLDP packet is any valuewithin 0 to 254, it indicates that the LLDP packet is sent from the CBdevice, that is, the CB device receives through the first port the LLDPpacket sent from another CB device.

The unique identifier field may be an Address field, which is used tocarry a unique identifier of the device, and the unique identifier mayinclude, but is not limited to, a MAC (Media Access Control) address ofthe device. Based on this, when receiving through the first port theLLDP packet sent by the PE device, the CB device can obtain the MACaddress of the PE device by analyzing the unique identifier field.

At block 202, the CB device may query an array table when the first portis not included in any of aggregation groups. If the unique identifierof the PE device exists in the array table, block 203 may be performed;if the unique identifier of the PE device does not exist in the arraytable, block 204 may be performed.

In an example, the CB device may create an array table for recording thecorrespondence between the identifier of the aggregation group (referredto aggregation group identifier) and the unique identifiers of the PEdevices. Table 1 shows an example of an array table. As shown in Table1, the initial state of the array table is empty. In the subsequentprocess, the CB device will add the aggregation group identifier and theunique identifiers of the PE devices to the array table.

TABLE 1 Aggregation group ID Unique identifier of PE device . . . . . .

In an example, after receiving through the first port the packet sentfrom the PE device, the CB device may analyze the unique identifier ofthe PE device from the packet, and then determines whether the firstport is included in the aggregation group. If the first port is includedin the aggregation group (referred to as the second aggregation group),the CB device may query the array table by the identifier of the secondaggregation group (referred to as the second aggregation groupidentifier); if the unique identifier of the PE device corresponding tothe second aggregation group identifier recorded in the array table isdifferent from the unique identifier of the PE device that is analyzedfrom the packet, the CB device may update the unique identifier of thePE device corresponding to the second aggregation group identifier intothe analyzed unique identifier in the array table, and ends the process.If the unique identifier of the PE device corresponding to the secondaggregation group identifier recorded in the array table is the same asthe unique identifier of the PE device that is analyzed from the packet,the process may be terminated. If the first port is not included in theaggregation group, the array table may be queried by the uniqueidentifier of the PE device analyzed from the packet.

At block 203, if the unique identifier of the PE device exists in thearray table, the CB device may obtain an aggregation group identifier(recorded as the third aggregation group identifier) corresponding tothe unique identifier of the PE device from the array table, and add thefirst port to the third aggregation group corresponding to the thirdaggregation group identifier. In this way, the first port can besuccessfully added to the aggregation group.

The array table is used to record the correspondence between theaggregation group identifier and the unique identifier of the PE device.Therefore, when the unique identifier of the PE device exists in thearray table, the CB device may obtain the aggregation group identifiercorresponding to the unique identifier from the array table, and add thefirst port into the aggregation group corresponding to the aggregationgroup identifier.

At block 204, if the unique identifier of the PE device does not existin the array table, the CB device may select an idle (that is, unused)aggregation group identifier (recorded as the first aggregation groupidentifier), and create a first aggregation group corresponding to thefirst aggregation group identifier; add the first port to the createdfirst aggregation group, and record the correspondence between the firstaggregation group identifier and the unique identifier of the PE deviceanalyzed in block 202 in the array table.

In an example, after the first aggregation group is created, the CBdevice may also select an idle (i.e., unused) PE number and assign theselected PE number to the PE device. The PE number is used as the framenumber of the PE device, and is the identifier of the PE device managedby the CB device. Then, the CB device may also record the correspondencebetween the selected PE number and the first aggregation groupidentifier.

It should be noted that the foregoing first aggregation group, the firstaggregation group identifier, the second aggregation group, the secondaggregation group identifier, the third aggregation group, and the thirdaggregation group identifier are only distinguished for convenience ofdescription, not intending to indicate different aggregation groups. Inactual, the first aggregation group, the second aggregation group, andthe third aggregation group may be the same aggregation group ordifferent aggregation groups.

In an example, the CB device may create an aggregation group for each PEdevice, including: creating an aggregation group for the PE device,assigning an aggregation group identifier to the aggregation group,adding a port to the aggregation group, and assigning a PE number to thePE device corresponding to the aggregation group.

To achieve “assigning an aggregation group identifier to an aggregationgroup”, multiple aggregation group identifiers may be configured on theCB device, such as the aggregation group identifier 1—the aggregationgroup identifier 1024. In the initial state, these aggregation groupidentifiers are idle. When an aggregation group identifier is assignedto an aggregation group, the aggregation group identifier is marked as anon-idle aggregation group identifier, and is no longer assigned toother aggregation groups.

To achieve “selecting an idle PE number and assigning the selected PEnumber to the PE device”, multiple PE numbers may be configured on theCB device, such as PE number 100-PE number 128. In the initial state,these PE numbers are idle. When a PE number is assigned to a PE device,the PE number is marked as a non-idle PE number, and is no longerassigned to other PE devices.

The above method for creating the aggregation group will be described indetail below in conjunction with a specific example. The creationprocess of the aggregation group can be as shown in FIG. 2A.

At block a1, when receiving a packet (LLDP packet) through a first port,the CB device analyzes a device type field from the packet. When thedevice type field is a preset value, block a2 is performed; when thedevice type field is not a preset value, it is determined that thepacket received through the first port is sent from a non-PE device, andthe process ends.

At block a2, the CB device determines that the packet received throughthe first port is sent from the PE device, and analyzes the uniqueidentifier of the PE device, such as the MAC address of the PE device,from the unique identifier field of the packet.

At block a3, the CB device determines whether the first port is includedin an aggregation group.

If yes, block a4 may be performed, and if not, block a6 may beperformed.

At block a4, the CB device queries the array table by the aggregationgroup identifier of the aggregation group, and determines whether theunique identifier of the PE device corresponding to the aggregationgroup identifier in the array table is the same as the unique identifierof the PE device carried in the packet. If yes, the process ends, and ifnot, block a5 may be performed.

At block a5, the CB device updates the unique identifier of the PEdevice corresponding to the aggregation group identifier in the arraytable to the unique identifier of the PE device carried in the packet.After block a5, the flow can be terminated.

At block a6, the CB device queries the array table by the uniqueidentifier of the PE device, and determines whether the uniqueidentifier exists in the array table. If yes, block a7 may be performed;if no, block a8 may be performed.

At block a7, the CB device obtains the aggregation group identifiercorresponding to the unique identifier of the PE device from the arraytable, and adds the first port to the aggregation group corresponding tothe aggregation group identifier, and then ends the process.

At block a8, the CB device selects an idle aggregation group identifier,creates an aggregation group corresponding to the selected aggregationgroup identifier, and adds the first port to the created aggregationgroup. Then, block a9 is performed.

At block a9, the CB device records the correspondence between theaggregation group identifier and the unique identifier in the arraytable.

At block a10, the CB device selects an idle PE number and assigns the PEnumber to the PE device.

At block a11, the CB device records the correspondence between the PEnumber and the aggregation group identifier, and ends the process.

Based on the foregoing technical solution, in the examples of thisdisclosure, the CB device may automatically create an aggregation group,assign an idle aggregation group identifier to the aggregation group,and add the port connected to the PE device to the aggregation groupinstead of manually creating an aggregation group and adding the port tothe aggregation group by an user. Therefore, the workload of the manualconfiguration by the user can be reduced. In particular, when a CBdevice is connected to a large number of PE devices, the workload of theuser can be significantly reduced. The CB device can quickly create anaggregation group to achieve automatic deployment of PE devices. The CBdevice can also automatically assign a PE number to the PE device, sothat the PE device can automatically go online.

The foregoing method of creating the aggregation group will be describedin detail below with reference to the application scenario shown in FIG.1.

Assume that the PE device 11 sends an LLDP packet through the port 111,where the LLDP packet carries the MAC address A of the PE device 11.After the CB device 10 receives the LLDP packet through the port 101,since the port 101 is not included in the aggregation group, the CBdevice 10 queries the array table by the MAC address A. Since the MACaddress A does not exist in the array table, the CB device 10 selects anidle aggregation group identifier such as the aggregation groupidentifier 1, and creates an aggregation group corresponding to theaggregation group identifier 1 (hereinafter referred to as aggregationgroup 1). Then, the CB device 10 adds the port 101 to the aggregationgroup 1, and records the correspondence between the aggregation groupidentifier 1 and the MAC address A in the array table, as shown in Table2. Then, the CB device 10 selects an idle PE number such as the PEnumber 100, and assigns the PE number 100 to the PE device 11, andrecords the correspondence between the PE number 100 and the aggregationgroup identifier 1.

TABLE 2 Aggregation group identifier Unique identifier of the PE deviceAggregation group identifier 1 MAC address A . . . . . .

Then, the PE device 11 sends an LLDP packet through the port 112, wherethe LLDP packet carries the MAC address A of the PE device 11. After theCB device 10 receives the LLDP packet through the port 103, since theport 103 is not included in the aggregation group, the CB device 10queries the array table by the MAC address A. Since the MAC address Aexists in the array table, the CB device 10 obtains the aggregationgroup identifier 1 corresponding to the MAC address A from the arraytable, and adds the port 103 to the aggregation group 1 corresponding tothe aggregation group identifier 1.

Until now, the CB device 10 automatically completes the aggregation ofport 101 and port 103. The CB device 10 creates an aggregation group 1,assigns an aggregation group identifier 1 to the aggregation group 1,adds port 101 and port 103 to the aggregation group 1, and assigns thePE number 100 to the PE device 11 corresponding to the aggregation group1. After that, if the CB device 10 receives a new LLDP packet throughthe port 101 or the port 103 again, since the port 101/port 103 has beenalready included in the aggregation group, the CB device 10 will notstart the operation of creating and updating the aggregation group basedon the new LLDP packet.

Similarly, when the CB device 10 receives an LLDP packet through theport 102/port 104, the process is similar to the foregoing process, anddetails thereof will not be described herein Finally, the CB device 10may create the aggregation group 2, assign the aggregation groupidentifier 2 to the aggregation group 2, add the port 102 and the port104 to the aggregation group 2, and assign the PE number 101 to the PEdevice 12 corresponding to the aggregation group 2.

Based on the same concept as the above method, in an example of thisdisclosure, an apparatus for creating an aggregation group is provided,which is applied to a CB device. FIG. 3 is a structural diagram of thedevice, and the device includes the following modules.

A receiving module 301 is configured to receive, through a first port, apacket sent by a PE device.

An analyzing module 302 is configured to analyze a unique identifier ofthe PE device from the packet.

A query module 303 is configured to query an array table when the firstport is not included in any of aggregation groups.

A processing module 304 is configured to: select an idle firstaggregation group identifier when the unique identifier of the PE devicedoes not exist in the array table, create a first aggregation groupcorresponding to the first aggregation group identifier, add the firstport to the first aggregation group, and record a correspondence betweenthe first aggregation group identifier and the unique identifier of thePE device in the array table.

A receiving module 301 is specifically configured to receive a packetthrough the first port, analyze a device type field from the packet, anddetermine that the packet received through the first port is sent fromthe PE device when the device type field is a preset value.

The query module 303 is further configured to query the array table incase that the first port is included in a second aggregation group. Inthis case, the processing module 304 is further configured to: in casethat a unique identifier of a PE device corresponding to a secondaggregation group identifier of the second aggregation group recorded inthe array table is different from the unique identifier of the PE deviceanalyzed from the packet, update the unique identifier of the PE devicecorresponding to the second aggregation group identifier in the arraytable into the unique identifier of the PE device analyzed from thepacket.

In an example, the processing module 304 is further configured to obtaina third aggregation group identifier corresponding to the uniqueidentifier of the PE device from the array table when the uniqueidentifier of the PE device exists in the array table, and add the firstport to a third aggregation group corresponding to the third aggregationgroup identifier.

In an example, the processing module 304 is further configured to, afterthe first aggregation group is created, select an idle PE number andassign the PE number to the PE device, and record a correspondencebetween the PE number and the first aggregation group identifier.

The packet includes an LLDP packet, and the unique identifier includes aMAC address of the PE device.

In examples of this disclosure, the hardware structure of the CB devicecan be specifically shown in FIG. 4. A machine readable storage medium410 and a processor 420 are included, wherein:

Machine-readable storage medium 410 is configured to store instructioncodes.

The processor 420 is configured to communicate with the machine readablestorage medium 410, read and execute the instruction codes stored in themachine readable storage medium 410, and implements the operation ofoperating the aggregation group disclosed in the above example of thisdisclosure.

Here, machine-readable storage medium 410 can be any electronic,magnetic, optical, or other physical storage device that can contain orstore information such as executable instructions, data, and the like.For example, a machine-readable storage medium can be a volatile memory,a non-volatile memory, or similar storage medium. Specifically, themachine-readable storage medium 410 may be a RAM (Random Access Memory),a flash memory, a storage drive (such as a hard disk drive), a solidstate drive, any type of storage disk (such as a compact disc, a DVD,etc.) or the combination thereof.

The system, device, module or unit set forth in the above examples maybe implemented by a computer chip or an entity, or by a product having acertain function. A typical implementation device is a computer, and thespecific form of the computer may be a personal computer, a laptopcomputer, a cellular phone, a camera phone, a smart phone, a personaldigital assistant, a media player, a navigation device, an emailtransceiver, a game control, a tablet, a wearable device, and any ofthese devices or a combination thereof.

For convenience of description, the above apparatus is functionallydivided into each unit to be described separately. Of course, thefunctions of each unit may be implemented in a same/multiple softwareand/or hardware when implementing the present application.

Those skilled in the art will appreciate that embodiments of the presentapplication can be provided as a method, system, or computer programproduct. Thus, the application can take the form of an entirely hardwareembodiment, an entirely software embodiment, or a combination ofsoftware and hardware. Moreover, embodiments of the present applicationcan take the form of a computer program product embodied on one or morecomputer usable storage media (including but not limited to diskstorage, CD-ROM, optical storage, etc.) including computer usableprogram codes.

The present application is described with reference to flowcharts and/orblock diagrams of methods, apparatus (systems), and computer programproducts according to examples of this disclosure. It will be understoodthat each of the flowcharts and/or block diagrams can be implemented bycomputer program instructions. These computer program instructions canbe provided to a processor of a general purpose computer, specialpurpose computer, embedded processor, or other programmable dataprocessing device to produce a machine for generating a means forimplementing the functions specified in one or more flows of theflowchart or in a block or blocks of the block diagram by instructionsexecuted by a processor of a computer or other programmable dataprocessing device.

Moreover, these computer program instructions can also be stored in acomputer readable memory that can direct a computer or otherprogrammable data processing device to operate in a particular manner,such that the instructions stored in the computer readable memoryproduce an article of manufacture comprising the instruction device. Theinstruction device implements the functions specified in one or moreflows of the flowchart or in one or more blocks of the block diagram.

These computer program instructions can also be loaded onto a computeror other programmable data processing device such that a series ofoperational steps are performed on a computer or other programmabledevice to produce computer-implemented processing. Thus, theinstructions executed on a computer or other programmable device providesteps for implementing the functions specified in one or more flows of aflowchart and/or one or more blocks of a block diagram.

The foregoing disclosure is merely illustrative of the presentapplication but not intended to limit the application. Various changesand modifications can be made to the present application by thoseskilled in the art. Any modifications, equivalents, improvements, etc.made within the spirit and scope of the present application shall beencompassed within the scope of the appended claims.

1. A method for creating an aggregation group, including: receiving, bya controlling bridge (CB) device, through a first port, a packet sentfrom a port extender (PE) device; analyzing, by the CB device, a uniqueidentifier of the PE device from the packet; querying, by the CB device,an array table when the first port is not included in any of aggregationgroups; selecting, by the CB device, an idle first aggregation groupidentifier when the unique identifier of the PE device does not exist inthe array table; creating, by the CB device, a first aggregation groupcorresponding to the first aggregation group identifier, adding thefirst port to the first aggregation group, and recording acorrespondence between the first aggregation group identifier and theunique identifier of the PE device in the array table.
 2. The methodaccording to claim 1, wherein, receiving, through the first port, thepacket sent from the PE device, comprises: receiving, by the CB device,the packet through the first port; analyzing, by the CB device, a devicetype field from the packet; determining, by the CB device, that thepacket received through the first port is sent from the PE device whenthe device type field has a preset value.
 3. The method of claim 2,wherein the method further comprises: the first port is further includedin a second aggregation group, querying, by the CB device, the arraytable; in case that a unique identifier of a PE device corresponding toa second aggregation group identifier of the second aggregation grouprecorded in the array table is different from the unique identifier ofthe PE device analyzed from the packet, updating, by the CB device, theunique identifier of the PE device corresponding to the secondaggregation group identifier in the array table into the uniqueidentifier of the PE device analyzed from the packet.
 4. The method ofclaim 1, wherein, the method further comprising: obtaining, by the CBdevice, a third aggregation group identifier corresponding to the uniqueidentifier of the PE device from the array table when the uniqueidentifier of the PE device exists in the array table; adding, by the CBdevice, the first port to a third aggregation group corresponding to thethird aggregation group identifier.
 5. The method of claim 1, wherein,after creating the first aggregation group corresponding to the firstaggregation group identifier, the method further includes: selecting anidle PE number and assigning the idle PE number to the PE device;recording a correspondence between the idle PE number and the firstaggregation group identifier.
 6. The method of claim 1, wherein, thepacket includes a Link Layer Discovery Protocol (LLDP) packet, andwherein the unique identifier includes a Media Access Control (MAC)address of the PE device. 7-12. (canceled)
 13. An apparatus for creatingan aggregation group, applied to a controlling bridge (CB) device,comprising: a non-transitory machine readable storage medium storingmachine executable instructions; a processor for executing the machineexecutable instructions to receive, through a first port of the CBdevice, a packet sent from a port extender (PE) device; analyze a uniqueidentifier of the PE device from the packet; query an array table whenthe first port is not included in any of aggregation groups; select anidle first aggregation group identifier when the unique identifier ofthe PE device does not exist in the array table; create a firstaggregation group corresponding to the first aggregation groupidentifier, add the first port to the first aggregation group, andrecord a correspondence between the first aggregation group identifierand the unique identifier of PE device in the array table.
 14. Theapparatus of claim 13, wherein, when receiving, through the first port,the packet sent from the PE device, the processor is further caused bythe machine executable instructions to: receive a packet through thefirst port; analyze a device type field from the packet; determine thatthe packet received through the first port is sent from the PE devicewhen the device type field has a preset value.
 15. The apparatus ofclaim 14, wherein the processor is further caused by the machineexecutable instructions to: in case that the first port is included in asecond aggregation group, query the array table; in case that a uniqueidentifier of a PE device corresponding to a second aggregation groupidentifier of the second aggregation group recorded in the array tableis different from the unique identifier of the PE device analyzed fromthe packet, update the unique identifier of the PE device correspondingto the second aggregation group identifier in the array table into theunique identifier of the PE device analyzed from the packet.
 16. Theapparatus of claim 13, wherein, the processor is further caused by themachine executable instructions to: obtain a third aggregation groupidentifier corresponding to the unique identifier of the PE device fromthe array table when the unique identifier of the PE device exists inthe array table; add the first port to a third aggregation groupcorresponding to the third aggregation group identifier.
 17. Theapparatus of claim 13, wherein, after creating the first aggregationgroup corresponding to the first aggregation group identifier, theprocessor is further caused by the machine executable instructions to:select an idle PE number and assigning the idle PE number to the PEdevice; record a correspondence between the idle PE number and the firstaggregation group identifier.
 18. The apparatus of claim 13, wherein,the packet includes a Link Layer Discovery Protocol (LLDP) packet, andwherein the unique identifier includes a Media Access Control (MAC)address of the PE device.